Obsah FormFields ve Wordu

Otázka od: Pavel Malinsky

3. 6. 2004 12:30

Ahoj,

  tak se skoro ctrnact dni prubezne snazim najit
reseni jak dostat do FormFieldu ve Wordu vice jak 255 znaku.
I kdyz je FormField nastaven na delku "Neomezene"
tak to tam programove proste nedokazu dostat   .

--------
MSWord.ActiveDocument.FormFields.Item('jmeno').result:= 'VIC_NEZ_255_ZNAKU'
??
---------

Vyse uvedene vzdycky skonci hlaskou, ze retezec je
prilis dlouhy.

Fakt nikdo prosim nevite jak to udelat?

          S pozdravem a dikem
=====================================
> Pavel Malinsky; malinsky@pmcom.cz <
=====================================
> GSM: 602 652 203 | ICQ: 322015967 <
=====================================




Odpovedá: js-delphi@quick.cz

3. 6. 2004 12:52

Odesilatel: Pavel Malinsky <malinsky@pmcom.cz>
> tak se skoro ctrnact dni prubezne snazim najit
> reseni jak dostat do FormFieldu ve Wordu vice jak 255 znaku.
> I kdyz je FormField nastaven na delku "Neomezene"
> tak to tam programove proste nedokazu dostat   .
>
> --------
> MSWord.ActiveDocument.FormFields.Item('jmeno').result:=
> 'VIC_NEZ_255_ZNAKU'??
> ---------

Ahoj.
Pokud z let, co jsem v konfereci, neco pamatuju, tak tohle vyresit nejde, ale
jde to obejit. Programove si musis zjistit, kolik znaku ma text, ktery chces
takhle vlozit do Wordu.
Tenhle text si rozdelis na retezce o delce 255 (ja to delam na 250) - dostanes
XX retezcu.
No a pak do toho Tveho fieldu vlozis XX "nesmyslnych retezcu" (nesmyslny z
pohledu, aby se nemohly v textu normalne objevit) a pak nastoupi druha f-ce a
to je nahrazeni casti textu jinym textem... no a kazdy ten nesmyslny retezec
nahradis Tvym retezcem 255 (250) znaku.
Kdyz muj "nesmylsny retezec" ma 6 znaku, tak takovych muzu do toho fieldu
vlozit 42 -> tzn., ze jsem schopen do dokumentu Wordu vlozit text o delce
42*250 = 10500 znaku a to mi zatim vzdy stacilo ;)
Tohle je pro me jedina znama cesta, jak to udelat.
Ahoj
Jirka
--------------------------------------------------
Ing. Jiri Sokol; jiri.sokol@seznam.cz; 972 231 187
D6Prof+SP3; WinXPProf+SP1; FB 1.0.3
programator amater


Odpovedá: Bohac Frantisek

3. 6. 2004 13:06

Musel bych videt konkretni priklad (vzhled dokumentu), ale co treba tohle:

MSWord.ActiveDocument.FormFields.Item('jmeno').range.text :=
'text_delsi...';

S pozdravem

Frantisek Bohac

----- Original Message -----
From: "Pavel Malinsky" <malinsky@pmcom.cz>


> reseni jak dostat do FormFieldu ve Wordu vice jak 255 znaku.
> I kdyz je FormField nastaven na delku "Neomezene"
> tak to tam programove proste nedokazu dostat   .

> --------
> MSWord.ActiveDocument.FormFields.Item('jmeno').result:=
'VIC_NEZ_255_ZNAKU'
> ??
> ---------
>
> Vyse uvedene vzdycky skonci hlaskou, ze retezec je
> prilis dlouhy.



Odpovedá: Pavel Malinsky

3. 6. 2004 14:45

> -----Original Message-----
> From: delphi-l-owner@clexpert.cz
> [mailto:delphi-l-owner@clexpert.cz] On Behalf Of js-delphi@quick.cz
> Sent: Thursday, June 03, 2004 1:52 PM
>
> Ahoj.
> Pokud z let, co jsem v konfereci, neco pamatuju, tak tohle
> vyresit nejde, ale jde to obejit. Programove si musis
> zjistit, kolik znaku ma text, ktery chces takhle vlozit do Wordu.
> Tenhle text si rozdelis na retezce o delce 255 (ja to delam
> na 250) - dostanes XX retezcu.

S tim fiktivnim naplnenim a naslednym replacem me to teda nenapadlo,
ale jak se dela replace ve Fieldu ? V celem dokumentu pres Selection.Find
bych tomu rozumel, ale replace v ramci Fieldu se mi nejak nedari  

Byla jeste prosim rada?

          S pozdravem a dikem
=====================================
> Pavel Malinsky; malinsky@pmcom.cz <
=====================================
> GSM: 602 652 203 | ICQ: 322015967 <
=====================================